package com.escool.controller;

import java.util.Map;

import javax.validation.Valid;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.validation.BindingResult;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;

import com.escool.model.TbTurno;
import com.escool.service.TurnoService;

@Controller
public class TurnoController {
	
	@Autowired
	TurnoService turnoService;
	
	@RequestMapping("showTurno")
	public String listTurno(Map<String, Object> map){
		map.put("turno", new TbTurno());
		map.put("turnoList", turnoService.listTurno());
		return "/turno";
	}
	
	@RequestMapping(value="addTurno",method= RequestMethod.POST)
	public String addTurno(@ModelAttribute("turno") @Valid TbTurno turno, BindingResult result){
		if(!result.hasErrors()){
			turnoService.addTurno(turno);
			return "redirect:/showTurno";
		}
		return "";
	}
	@RequestMapping(value="editTurno",method= RequestMethod.POST)
	public String editTurno(@ModelAttribute("turno") @Valid TbTurno turno, BindingResult result){
		if(!result.hasErrors()){
			turnoService.updateTurno(turno);
			return "redirect:/showTurno";
		}
		return "";
	}
	@RequestMapping(value="deleteTurno",method= RequestMethod.POST)
	public String deleteTurno(@ModelAttribute("turno") @Valid TbTurno turno, BindingResult result){
		if(!result.hasErrors()){
			turnoService.removeTurno(turno.getIdTurno());
			return "redirect:/showTurno";
		}
		return "";
	}

}
